<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<body>
  <script>
    /**
     * 选择排序：
     * 标记最小的元素，交换到最前 
     * 
    */
   function selectSort(arr){
     for (let x = 0; x < arr.length-1; x++) {
       let mini = x  // 标记的是索引
       for (let y = x+1; y < arr.length; y++) {
         if(arr[y] < arr[mini]){
           mini = y
         }
       }
      // 如果标记元素不是最初的元素 则需交换
       if(mini != x){
         
        //  let i = arr[x]
        //  arr[x] = arr[mini]
        //  arr[mini] = i

        //  使用 数组解构赋值 方式 交换元素
        [arr[x],arr[mini]] = [arr[mini],arr[x]]
       }
     }
     return arr
   }
   let arr = [3,1,1,4,8,9,7,4,2,0,1,0]
   console.log(selectSort(arr))
  </script>
</body>
</html>